package com.seari.service;

import java.util.List;
import java.util.Map;

import com.seari.bean.QueryProBean;
import com.seari.bean.SelectObj;
import com.seari.pojo.InvestHoleInPojo;
import com.seari.pojo.ProNodePojo;

public interface ProgrammeService {

	/**
	 * @param queryProBean
	 * @return
	 * 获取项目投资数
	 */
	List<Map<String, String>> getProInvest(QueryProBean queryProBean);
	
	/**
	 * @param queryProBean
	 * @return
	 * 投资数下钻
	 */
	List<InvestHoleInPojo> getInvestHoleIn(QueryProBean queryProBean);

	/**
	 * @param queryProBean
	 * @return
	 * 获取项目资金数
	 */
	List<Map<String, String>> getProMoneyNum(QueryProBean queryProBean);

	/**
	 * @param queryProBean
	 * @return
	 * 资金数下钻功能
	 */
	List<InvestHoleInPojo> getProMoneyNumDown(QueryProBean queryProBean);

	/**
	 * @param queryProBean
	 * @return
	 * 查询附属合同
	 */
	List<SelectObj> queryConByProid(QueryProBean queryProBean);

	/**
	 * @param queryProBean
	 * @return 计划关键路径
	 */
	List<ProNodePojo> queryProNodePlan(QueryProBean queryProBean);

	/**
	 * @param queryProBean
	 * @return 实际关键路径
	 */
	List<ProNodePojo> queryProNodeActual(QueryProBean queryProBean);

	/**
	 * @param conid
	 * @return
	 * 节点偏差说明及改进措施
	 */
	List<Map<String, String>> queryExplainMeasuresByconid(String conid);

	/**
	 * @param queryProBean
	 * @return
	 *  计划次要节点
	 */
	List<ProNodePojo> queryProMinorNodePlan(QueryProBean queryProBean);

	/**
	 * @param queryProBean
	 * @return
	 *  实际次要节点
	 */
	List<ProNodePojo> queryProMinorNodeActual(QueryProBean queryProBean);

	/**
	 * 根据时间点查找计划投资、实际投资、比例（sap临时表）
	 * @param ebeln
	 * @param beginTime
	 * @param endTime
	 * @return
	 */
	Map<String,String> queryPlanAcRatio(String ebeln, String beginTime, String endTime);

	/**
	 * 查询投资数页面点击后详情
	 * @param ebeln
	 * @param beginTime
	 * @param endTime
	 * @return
	 */
	List<Map<String, String>> queryPlanAcDetails(String ebeln, String beginTime, String endTime);

}
